//
// Created by sundagao on 25-7-25.
//

/*!
    \class Module
    \inmodule module1
    \brief 模块1的核心功能类

    Module类提供了模块1的核心功能实现，包括初始化、执行和状态管理。

    \section1 基本用法
    使用示例：
    \code
    Module module;
    module.initialize();
    int result = module.execute(5);
    \endcode

    \sa initialize(), execute(), getStatus()
*/

#include "Module.h"

/*!
    \fn Module::Module()
    构造一个新的Module对象，初始化状态为0。
*/
Module::Module() : status(0) {}

/*!
    \fn Module::~Module()
    销毁Module对象。
*/
Module::~Module() {}

/*!
    \fn bool Module::initialize()
    初始化模块。

    调用此方法将模块状态设置为1。

*/
bool Module::initialize() {
    status = 1;
    return true;
}

/*!
    \fn int Module::execute(int input)
    执行模块的主要功能。
*/

int Module::execute(int input) {
    return input * 2;
}

/*!
    \fn int Module::getStatus() const
    获取当前模块状态。

*/

int Module::getStatus() const {
    return status;
}

/*!
    \fn void Module::setConfig(const std::string &config)
    设置模块配置参数。
*/
void Module::setConfig(const std::string& config) {
    this->config = config;
}

/*!
    \fn void Module::reset()
    重置模块状态。

    将状态重置为0并清空配置。
*/
void Module::reset() {
    status = 0;
    config.clear();
}